var isUpdate = false;

$(document).ready(function(){
	var isMenuView = false;

	// エディタの高さを合わせる
	resizeEditor();
	
	$(window).resize (function() {resizeEditor();});

	// メニューバー
	$("#menubar > li").mouseover (function (){
			if (isMenuView) {
				$("#menubar > li.selected").children("ul").hide();
				$(this).children("ul").css('top', $(this).parent().height());
				$(this).children("ul").show();
			}
			$("#menubar > li.selected").removeClass("selected");
			$(this).addClass("selected");
	});

	$("#menubar > li").click (function (){
			if (isMenuView) {
				isMenuView = false;
				$(this).children("ul").hide(100);
			} else {
				isMenuView = true;
				$(this).children("ul").css('top', $(this).parent().height());
				$(this).children("ul").show(100);
			}
	});

	// メニューバーのイベントバインド(デフォルト)
	$("#NewFile").click (function (e) {
		var Location = $(this).attr('href');
		window.location = Location + 'new';
		e.preventDefault();
	});

	$("#SaveFile").click (function (e) {
		if (isUpdate) {
			$.ajax({
				'type': "POST",
				'url': $(this).attr('href') + "update",
				'data': $("#EditorForm").serialize(),
				'dataType': "xml",
				'success': function(xml){
					var msg = $(xml).children('response').children('message').text();
					if (msg) {
						alert(msg);
						isUpdate = false;
						$(".Editor > h2 > span").remove();
					} else {
						alert("失敗しました。");
					}
				},
				'error': function (Request, Status, e) {
					alert ("エラーが発生しました。\n Status:" + Request.statusText);
				}
			});
		}
		e.preventDefault();
	});

	$("#SaveFileNew").click (function (e) {
		var editaddr = $(this).attr('href')+ "edit/";
		$.ajax({
			'type': "POST",
			'url': $(this).attr('href') + "insert",
			'data': $("#EditorForm").serialize(),
			'dataType': "xml",
			'success': function(xml){
				var msg = $(xml).children('response');
				alert($(msg).children('message').text());
				var newID = $(msg).children('newID').text() - 0;
				if (newID) {
					isUpdate = false;
					$(".Editor > h2 > span").remove();
					alert ('編集モードに移行します。')
					location.href= editaddr + $(msg).children('newID').text();
				}
			},
			'error': function (Request, Status, e) {
				alert ("エラーが発生しました。\n Status:" + Request.statusText);
			}
		});
		e.preventDefault();
	});

	$("#ExitWithSave").click (function (e) {
		var retaddr = $(this).attr('href');
		$.ajax({
			'type': "POST",
			'url': $(this).attr('href') + "update",
			'data': $("#EditorForm").serialize(),
			'dataType': "xml",
			'success': function(xml){
				var msg = $(xml).children('response');
				alert($(msg).children('message').text());
				isUpdate = false;
				$(".Editor > h2 > span").remove();
				location.href= retaddr;
			},
			'error': function (Request, Status, e) {
				alert ("エラーが発生しました。\n Status:" + Request.statusText);
			}
		});
		e.preventDefault();
	});

	$("#DeleteFile").click (function (e) {
		if (window.confirm('削除してもよろしいですか？')) {
			var listaddr = $(this).attr('href')+ "list";
			$.ajax({
				'type': "POST",
				'url': $(this).attr('href') + "delete",
				'data': $("#EditorForm").serialize(),
				'dataType': "xml",
				'success': function(xml){
					var res = $(xml).children('response');
					var datacount = $(res).children('datacount').text() - 0;
					if (datacount) {
						isUpdate = false;
						$(".Editor > h2 > span").remove();
						var msg = $(res).children('message').text();
						alert(msg);
						location.href= listaddr;
					} else {
						alert('削除に失敗しました。');
					}
				},
				'error': function (Request, Status, e) {
					alert ("エラーが発生しました。\n Status:" + Request.statusText);
				}
			});
		}
		e.preventDefault();
	});

	$(".EditorInformation").append ($(".DefInformation").html());
});

// エディタの高さを合わせる
function resizeEditor () {
	$('.EditorMain').height ($('.Editor').innerHeight() - $('.EditorInformation').position().top);
	$('.EditorInformation').height ($('.Editor').innerHeight() - $('.EditorInformation').position().top);
}